#define _CRT_SECURE_NO_WARNINGS 1
//#include<stdio.h>
//int main()
//{
//	int arr[100] = { 0 };
//	int k = 0;
//	scanf("%d", &k);
//	int num = 0;
//	int temp = 0;
//	for (int i = 0; i < k; i++)
//		scanf("%d", &arr[i]);
//	scanf("%d", &num);
//	for (int i = 0; i < k; i++)
//		if (arr[i] == num)
//			temp++;
//	printf("%d", temp);
//	return 0;
//}


//#include<stdio.h>
//int main()
//{
//	printf("printf(\"Hello world!\\n\");\n");
//	printf("cout << \"Hello world!\" << endl;");
//	return 0;
//}


//#include<stdio.h>
//int main()
//{
//	int arr[4] = { 0 };
//	double sum = 0;
//	for (int i = 0; i < 4; i++)
//		scanf("%d", &arr[i]);
//	sum += arr[0] * 0.2;
//	sum += arr[1] * 0.1;
//	sum += arr[2] * 0.2;
//	sum += arr[3] * 0.5;
//	printf("%.1lf", sum);
//	return 0;
//}


//#include<stdio.h>
//int main()
//{
//	int num = 0;
//	scanf("%d", &num);
//	while (num)
//	{
//		printf("Happy new year!Good luck!\n");
//		num--;
//	}
//	return 0;
//}

//
//#include<stdio.h>
//int main()
//{
//	int arr[3] = { 0 };
//	int max = 0;
//	for (int i = 0; i < 3; i++)
//	{
//		scanf("%d", &arr[i]);
//		if (arr[i] > max)
//			max = arr[i];
//	}
//	printf("%d", max);
//	return 0;
//}


//#include<stdio.h>
//int is_prime(int num)
//{
//	int temp = 1;
//	for (int i = 2; i < num; i++)
//	{
//		if (num % i == 0)
//		{
//			temp = 0;
//			break;
//		}
//	}
//	if (temp)
//		return 1;
//	else
//		return 0;
//}
//int main()
//{
//	int temp = 0;
//	for (int i = 100; i <= 999; i++)
//	{
//		temp += is_prime(i);
//	}
//	printf("%d", temp);
//	return 0;
//}


//#include<stdio.h>
//int main()
//{
//	int num = 0;
//	int arr[1001] = { 0 };
//	scanf("%d", &num);
//	for (int i = 0; i < num; i++)
//	{
//		int temp = 0;
//		scanf("%d", &temp);
//		arr[temp] = 1;
//	}
//	for (int i = 0; i < 1001; i++)
//	{
//		if (arr[i] == 1)
//			printf("%d ", i);
//	}
//	return 0;
//}


#include<stdio.h>
int main()
{
	int num = 0;
	int arr[100][100] = { 0 };
	scanf("%d", &num);
	int temp = 1;
	for (int i = 0; i < num; i++)
	{
		for (int j = 0; j < num; j++)
		{
			scanf("%d", &arr[i][j]);
		}
	}
	for (int i = 1; i < num; i++)
	{
		for (int j = 0; j < i; j++)
		{
			if (arr[i][j] != 0)
				temp = 0;
		}
	}
	if (temp)
		printf("YES\n");
	else
		printf("NO\n");
	return 0;
}